<?php
namespace app\common\controller;

use think\Controller;

use think\Cookie;

// 前台公共控制器
class Home extends Controller{
    public function __construct(){
        // 继承父类
        parent::__construct();

        // 定义一个全局模型
        $this->UserModel=model('User.User');
        $this->ConfigModel=model('Config');

        // 判断是否有登录
        $LoginUser=Cookie::get('LoginUser');

        if(!empty($LoginUser)){
            // 查出来是否正确
            $id=isset($LoginUser['id']) ? $LoginUser['id'] : 0;

            // 根据id去查询用户 关联查询
            $user=$this->UserModel->with(['provinces','citys','districts'])->find($id);

            // 当这个人不存在时
            if(!$user){
                // cookie属于伪造的时
                Cookie::delete('LoginUser');
                $this->error('非法登录',url('home/index/login'));
                exit;
            }

            // 设置给所有全局的控制器
            $this->LoginUser=$user;

            // 当这个人存在的话 做一个全局的赋值
            $this->assign('LoginUser',$user);
        }else{
            $this->error('请先登录',url('home/index/login'));
            exit;
        }

        // 获取系统配置
        $this->system();
    }

    // 获取系统配置
    public function system(){
        $SystemList=$this->ConfigModel->select();

        $System=[];

        foreach($SystemList as $item){
            $System[$item['key']]=$item;
        }

        // 让每个界面都可以获取系统配置
        $this->assign('System',$System);
    }

}








?>